let fs = require('fs');
let path = require('path');
// 当我们在files文件夹下执行node命令，没有问题
// 但当我们在上一层文件夹下，node files/index.js 会报错，找不到a.txt这个文件
// 也就是说 这里的 ./a.txt不是相对于执行文件的，而是相对于执行node命令的终端的路径的

// fs.readFile('./a.txt', 'utf8', function (err, data) {
//   if(err) {
//     throw err;
//   }
//   console.log(data);
// })

fs.readFile('/home/cyan/桌面/Node.js-Learning/07/files/a.txt', 'utf8', function (err, data) {
  if(err) {
    throw err;
  }
  console.log(data);
})

// 但我们不能把这里的绝对路径写死，如果我们把项目转移到别的地方，那么绝对路径就不能保持正确了
// 因此，我们需要动态的获取绝对路径

// 因为我们此时可以调用这个API:__dirname,__filename
fs.readFile(__dirname + '/a.txt', 'utf8', (err, data) => {
  if (err) {
    throw err;
  }
  console.log(data);
})

// 为了方便操作，避免错误，我们采用join方法拼接绝对路径
fs.readFile(path.join(__dirname, './a.txt'), 'utf8', (err, data) => {
  if (err) {
    throw err;
  }
  console.log(data);
})